Electronic programming guide with movie preview

ABSTRACT

A preview system activated from an on-screen programming guide displays a video preview of a selected particular program on the display screen. The video preview is displayed on less than the full screen so that the video can be highly-compressed to save bandwidth.

BACKGROUND OF THE INVENTION

[0001] The present invention generally relates to television scheduleinformation, and more particularly to a system and method for providingpreviews of scheduled programming to assist a viewer in makingscheduling decisions.

[0002] As the number of television stations in a metropolitan area or ona cable network has increased, the number of programs of potentialinterest that are presented to a viewer has risen dramatically. With theuse of dish antennas capable of receiving direct satellite signals, themultitude of programs available to the viewer has further increased.

[0003] Additionally, television faces a digital future that will see themerger of television and PC technology. The television set of the futurewill include a micro-computer, a modem of interconnectivity with othercomputers over networks, intranets, and the internet, and be connectableto computer peripherals such as printers. Such capabilities as near“video on demand” (NVOD), “video on demand”, access to the world wideweb”, “audio on demand”, etc. will present the viewer with a plethora ofinformation and bandwidth.

[0004] As has become increasingly evident, information overload canactually reduce the usefulness of the information delivered.Accordingly, a great challenge exists to provide an interface thatmanages and provides an intelligent, user-friendly interface to theinformation available.

[0005] Consequently, television schedule systems that are provideddirectly on the viewer's television screen have been developed to assistthe viewer in sorting through these various programs and determiningwhich programs to watch or record. One such television schedule systemis disclosed in commonly assigned U.S. Pat. No. 5,353,121 (Young etal.), the complete disclosure of which is hereby incorporated byreference. In one embodiment of Young, the television schedule includesa series of menu screens having an array of cells corresponding todifferent television programs. The viewer may scroll through the cellsto view which television programs are being presented on variouschannels at various times. In addition, the viewer may select certaincells to obtain more information on the associated program or to pull upother submenus with additional options.

[0006] The recent development of television schedule systems, such asthe above described patent to Young, have created many new challenges.One such challenge is assisting viewers to select programs to view fromthe vast amount of programming available. As more programming isavailable the consumer needs more information to assist in selecting,especially in the case of pay-per-view where the consumer mustintelligently budget entertainment costs.

SUMMARY OF THE INVENTION

[0007] The present invention is a method and system for providing videopreviews for particular programs selected from an electronic programmingguide.

[0008] According to one aspect of the invention, a bit stream modulatedon a carrier includes preview video packets. When a viewer selects aparticular program from an on-screen guide a video stream, including thevideo packets or signals for the particular program, is selected andutilized to generate a “preview” video signal. The preview video is thendisplayed on the screen.

[0009] According to another aspect of the invention, the preview videois displayed on only a portion of the screen to allow the video to betransmitted using less bandwidth.

[0010] According to another aspect of the invention, a single videopreview is transmitted in a digital data stream as a carousel or endlessloop. There are individual bit streams for each preview.

[0011] According to another aspect of the invention, several videopreviews are transmitted in a single bit stream. The different previewsare transmitted as a carousel or endless loop.

[0012] Other features and advantages of the invention will be apparentin view of the following detailed description and appended drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

[0013]FIG. 1 is a schematic diagram of an EPG and preview windowdisplayed on the screen of a TV system;

[0014]FIG. 2 is a schematic diagram of a TV system;

[0015]FIG. 3 is a block diagram of a hardware unit for generating anon-screen electronic programming guide (EPG);

[0016]FIG. 4 is a schematic diagram of the hierarchical databaseutilized to generate the EPG;

[0017] FIGS. 5A-5D are schematic diagrams of data structures in thedatabase;

[0018]FIG. 6 is a schematic diagram depicting the transmission of an EPGin a digital satellite system;

[0019]FIG. 7 is a block diagram of the system for displaying previewvideos;

[0020]FIG. 8 is a flow chart of the steps for displaying a previewvideo;

[0021]FIG. 9 is a schematic diagram of digital information carried by acarrier; and

[0022]FIG. 10 is a schematic diagram of different carousel or endlessloop configurations for transmitting preview packets.

DESCRIPTION OF THE PREFERRED EMBODIMENT

[0023] Overview of the Previewing System

[0024]FIG. 1 depicts a preferred embodiment of the invention. Anelectronic program guide depicts movies and/or other programs availablefrom a DBS service. These movies or programs may be available on demandor nearly-on-demand, i.e. with a short wait or can be scanned for futureviewing..

[0025] The viewer typically accesses an on-screen electronic programmingguide (EPG) 10 which displays programming in a grid or matrix withchannels listed vertically, times listed horizontally, and guide entriesplaced in the grid entries indexed by a particular channel and time.

[0026] In the preferred embodiment, the user can activate a guide entryfor a particular movie and view a preview, known as a trailer, of themovie in a preview window 12 displayed on the screen. The entry may beactivated by first moving the pointer/cursor over the entry in the guideand then clicking to activate the preview or activation can beself-actuated whenever the pointer/cursor is moved over an entry. In apreferred embodiment the preview window 12 is sized so that the videocan be smaller to reduce bandwidth requirements.

[0027] In a DBS (digital broadcasting system) video is baseband signalsare digitized, compressed, transmitted. Because of advances in the artof compression, the frequency spectrum once used to transmit a singleprogram can now transmit four programs. Typically, in addition to videosignals, other bitstreams encoding information such as audio, VBI(vertical blanking information data such as closed caption andteletext), program guide information, and conditional accessinformation, are provided as separate bitstreams, multiplexed into acomposite bit stream, and transmitted.

[0028] In a preferred embodiment, a trailer bit stream comprising highlycompressed movie trailer video and audio bit streams is formed andprovided by a DBS. Each trailer includes header bits identifying themovie and providing other information about the trailer. The header andtrailer form a trailer packet. The trailer bit stream is modulated ontothe carrier as a carousel or an endless loop so that each trailer isretransmitted cyclically and will be rebroadcast after a short delay.

[0029] A decoder at the viewer's location receives carriers and controlsa tuner/demodulator to select one carrier. The carrier is sampled,decoded, error-corrected, and demultiplexed to separate the various bitstreams. The decoder includes video decoder chips that decompresscompressed video to reconstruct pictures of virtually any size.

[0030] When the viewer activates the guide to display a trailer, thedecoder is controlled to tune to the carrier transmitting the trailerbit stream, select the trailer bit stream from the demultiplexed bitstreams, process header bits of each trailer packet to identify thetrailer video and audio for the movies selected, decompress the videotrailer data, and transfer the decompressed video data as an auxiliaryvideo signal to a picture-within-picture display controller whichdisplays the trailer within the window that is {fraction (1/9)} the sizeof the full screen.

[0031] Various techniques for activating the preview function may beutilized and are not part of the present invention. For example, an iconin the guide entry may be clicked or a pop-up menu may be utilized.

[0032] Overview of an EPG System

[0033] In a preferred embodiment, the electronic program guide of theinvention may be implemented either on a personal computer, a PCTV, aset-top box, or a television including a custom board. However, theinvention is not limited to any particular hardware configuration andwill have increased utility as new combinations of computers andtelevision systems are developed. In the following any of the above willsometimes be referred to as a “TV system”. Block diagrams ofrepresentative TV systems are depicted in FIG. 2. Details ofimplementation are not depicted because the invention is not limited toany particular TV system.

[0034] As is well known, the picture to be displayed may be transmittedas an analog signal, for example according to the NTSC standard utilizedin the United States, or as a digital signal modulated. The signals maybe received over a cable, phone lines, the Internet, or via an antennaor satellite dish. Typically, television sets are designed to receiveanalog signals and computer display devices are designed to displaypictures encoded in a digital format. However, the decoder systemconverts the digital data to an analog signal for display on atelevision set.

[0035] In FIG. 2, analog or digital TV signals, received via cable 30,antenna 32, or satellite dish 34, are provided to a television system.If the signal is from a digital broadcast service, then a decoder 36converts the signal to baseband video and audio or channel ¾ RF. If thesignal is an analog signal it is passed through as a live video output.The television system 38, depending on its configuration, receivesselected ones of the outputs and displays the received program.

[0036] A PCTV includes a TV card 40, connected to either live video,baseband video, or channel ¾ output, digitizes the video image anddisplays the video image in a resizable window on the computer monitor.The PCTV is also coupled to land telephone lines by a modem 42.

[0037] If the received signal is an analog TV signal the TV card of thePCTV digitizes the analog signal and extracts included information fromthe vertical blanking intervals. On the other hand, if the signal is adigital signal separate audio, video, VBI (vertical blanking informationsuch as closed caption, teletext, and program related information),program guide, and conditional access information are provided asseparate bitstreams. The video and audio bitstreams for programs areconverted to a format for display and the program guide information isprocessed to form a program guide database. The processor, executingsoftware stored in memory, or available in a “live” digital data stream,generates interactive electronic program guide images and images ofreceived programs. The guide can be used to interact with and controlprograms displayed in the window.

[0038] A television system configured to display an electronic programguide such as a guide provided by StarSight Telecast includes anon-screen display controller and other hardware described below. If astandard analog broadcast signal is received, program guide data isextracted from the VBI by a VBI data slicer and processed to form aprogram database. If a DBS digital signal is received, either from asatellite or cable, VBI and program data are provided in separate bitstreams. The program guide images are either generated locally orremotely and provided to an on-screen display controller. Interactivityis provided via a remote control.

[0039] Alternatively, the program guide can be displayed on a computermonitor that interactively controls the television set through, forexample, an IR interface, including an IR blaster 44, to generate IRcodes to control the television and/or a VCR.

[0040] If the electronic guide database is generated locally, the systemfor creating the electronic programming guide must receive televisionschedule information and process the received information to create adatabase. Thus, the system requires a data reception unit, a processor,memory to store program code and a database, an on-screen displaygenerator (OSD), and a control interface for tuning to selectedchannels.

[0041] In one preferred embodiment, the schedule information istransmitted as a set of short commands of specified formats. Differentcommands communicate information such as a show schedule for a givenchannel, the title of each show in the schedule, descriptions andinformation attributes about each show in the channel. Thus, informationfor a show to be broadcast at a particular time is transmitted inseveral commands. ID numbers in the commands facilitate organizing theinformation into a relational database utilizing database engine (DBE)software stored in memory and executed by the processor.

[0042] In a preferred embodiment, a board is included at a viewer'stelevision set and the database is stored locally and commands aretransmitted in the VBIs of programming on a designated channel, forexample PBS. An example of a board for receiving ram guide information,generating program guide database, displaying the program guide, andinteractively controlling the program guide is depicted in FIG. 3. Thecommands are transmitted to the board in the vertical blanking intervalsof programming broadcast on a designated channel.

[0043] Alternatively, the commands could be transmitted to the localunit over land telephone lines. Additionally, as described below, insome systems the database is built remotely and the guide itself istransmitted to the local unit.

[0044] The database engine builds a hierarchical database in the RAM.The hierarchical structure of the database is depicted in FIG. 4. Thedatabase is structured internally as schedule data structures and themedata structures linked by handles and handle tables. Each handle is anindex to a handle table which contains pointers to blocks of memorywhere items of the database are stored.

[0045] In another embodiment, for example a DSS system, program guidedata is transmitted as a bit stream that is processed by the databaseengine.

[0046] Additionally, a N.E.W.S. (new, entertainment, weather, andsports) database has been developed. Commands including story text andstory IDs are transmitted. Links from the program guide to storiesrelated to a program can be created and the related stories can beaccessed from the guide.

[0047] An advertisement database is also created from commands includingadvertising text and logos including IDs for linking the ads to showsdisplayed in the EPG. The user may access the advertising informationdirectly from the guide.

[0048] An internet database is also created from commands including URLsto internet sites related to programs displayed on the EPG. If theviewer is viewing the EPG on a platform that is Web enabled, e.g.,WebTV, a PC, or PCTV, then a linked site can be accessed directly fromthe EPG.

[0049] Additionally, a graphics program module builds various displaysutilizing schedule, show title, and other information from the database.If the OSD controller operates in the character mode the display is agrid of character codes which are transferred to the OSD controllerwhich generates the on-screen display.

[0050] An input-response user interface program module responds to userinput to generate new displays responsive to the particular input. Inone preferred embodiment, the user utilizes an input device, e.g., aremote control, mouse, or keyboard, to place a pointer over a part ofthe current display and click. The input-response module responds to theposition of the pointer and the particular display currently displayedto generate a responsive display or take a particular action. In anotherpreferred embodiment the user interface responds to function buttons ona remote control. Specific examples will be described below.

Detailed Description of the EPG System

[0051] Board Description

[0052]FIG. 3 is a block diagram an embodiment of the electronic hardwareunit 52 utilized to perform the electronic on-screen schedule displayand other functions. The particular hardware unit 52 depicted is forTVRO (TV Receive Only) customers having home satellite dishes fortelevision viewing. This unit is coupled in series with existingcustomer TVRO equipment.

[0053] In FIG. 3, the unit receives Baseband Video in 123 from thecustomer TVRO system. The unit optionally outputs Baseband Video out 128or channel ¾ RF out 130. The unit includes an 8-bit microprocessor 100,64 bytes of code ROM 101, 512 K of RAM 102 for program data storage, acustom gate array 103, segmented base registers 104 for fast memory datamanipulation, security logic 106 for decoding incoming encrypted data, aserial bus 108 for display controller interface, serial bus 110 forinter-processor communication, watchdog timer 112 for error recovery, IRinput 113, IR transmitter circuits 116 for TV, VCR control, IR output117, CRC-32 encoding and decoding logic 118, on-board power supply 120,video input 123, On-Screen Display Controller and Formatter 124, customcolor converter 126, RF modulator 127, choice of Baseband Video or RFoutputs 128 or 130.

[0054] The on-screen display controller and formatter (OSDCF) 124functions as an I/O controller, an on-screen display controller (OSD),and also as a closed-caption data (CCD) VBI data slicer. The VBI(vertical blanking interval) is a dead space in a TV signal that allowsa television signal to reposition the scanning electron beam from thebottom to the top of the screen. Digital data, for exampleclose-captioned data, is modulated onto the carrier signal during theVBI.

[0055] The OSDCF 124 includes an analog-to-digital convertor (ADC) whichdigitizes the incoming baseband video and extracts digital informationtransmitted in the VBIs. As explained more fully below, messages fortransmission to the database are transmitted in the VBIs. These messagesare transferred to the processor 100 which executes a data base engineprocess to build or update the database.

[0056] The OSD part of the OSDCF 124 includes cache memory, charactermemory, timing functions, and an external RAM. The OSD reads high levelgraphic commands sent from the processor 100 and stores graphicinformation in the RAM. The OSD outputs red (R), green (G), blue (B),graphic data which is used to generate a local video signal. Dependingon the state of the user input interface, described below, the OSD localvideo output or the incoming live video will be displayed.

[0057] Accordingly, screen display graphic data generated by thedatabase engine is transferred to the RAM of the OSD which the generatesa local video signal that causes the display screen to be displayed onthe television screen.

[0058] Scheduling Data Structures

[0059] The DBE builds a hierarchical database in the RAM. Thehierarchical structure of the database is depicted in FIG. 4. Thedatabase is structured internally as schedule data structures and themedata structures linked by handles and handle tables. Each handle is anindex to a handle table which contains pointers to blocks of memorywhere structures of the database are stored.

[0060] The hierarchy for the schedule data structures, in descendingorder, is:

[0061] Channel Data Table: contains subscriber unit's list of channels;

[0062] Show List: contains time slots for each show scheduled to bebroadcast for a channel;

[0063] Show Title: contains the title text and show title attributes;

[0064] Show Description: contains show's ratings, attributes, anddescription text.

[0065] A channel data table, depicted in FIG. 5A, is the highest datastructure in the hierarchy. This table includes an entry for eachchannel received by the subscriber unit. The entries in the channel datatable are changed infrequently and are determined by the location of thesubscriber unit and type of services received. Each channel data tableentry includes information concerning the channel and a handle to a showlist handle table for the channel.

[0066] The next data structure in the hierarchy is the show listdepicted in FIG. 5B. The show list includes a start time typically beingmidnight GMT and 24 hours of scheduling. The channel's schedule is givenby an ordered sequence of show slots, with a show slot for each show-tobe broadcast by a particular channel for a particular day. Each slotincludes a duration, show title handle, and show description handle.Finding an entry corresponding to a given start time requires theentries to be scanned, in order, from the beginning of show list andadding duration values.

[0067] The database, when fully constructed, holds a week's worth ofshow lists for each channel. The days of the week are accessed byincrementing the show list handle by two bytes. The show lists areupdated each day at midnight GMT, with the show list for the day justcompleted being deleted and the show list for same day next week beingadded to the database.

[0068] The next data structures in the schedule hierarchy are the showtitle entries, depicted in FIG. 5C, and show description entries,depicted in FIG. 5D. For a given show slot the show title entry and showdescription entry are accessed utilizing the handles included in theslot. The show title and show description entries are stored in a memorypool divided into blocks. Each show title is identified by a unique20-bit show identification number (SID) and each show description isidentified by a unique 20-bit number assigned at the head end. The showtitle handles are based on the SID and the show title handles areoffsets into a show title handle table. The entry in the show titletable accessed by a particular show title handle includes the address ofthe first block in the memory pool where the show title entry is stored.Similarly, the show description handle table entry accessed by a showdescription handle stores the address of the first block in the memorypool where the show description entry is stored.

[0069] Each show title entry includes a theme index ID and the text ofthe show title. Typically, a single show title entry will be referencedby many show lists for different channels, days, and times. Thus, byutilizing handles in the show lists all show lists reference a singleshow title entry in memory so that memory is efficiently used. Many showtitle entries have a long life because the show titles may be for seriesthat are broadcast over long periods of time and may be referenced bymany showlists since many shows are broadcast by multiple channels.

[0070] Each show description entry includes a theme index ID, critic'srating, MPAA rating for the show, traits mask bits, year produced, andshow description text. Show description entries tend to have a shorterlife than show title entries because a description is only valid for aparticular episode of a series.

[0071] Schedule Search

[0072] To obtain schedule information for a particular time and todisplay the schedule information in the programming grid requires thefollowing steps. For each channel in the channel list, the show list forthe day is accessed and scanned. Horizontal blocks for the channel aresized according to the duration of the show slots including andfollowing the selected time. The show title entry referenced by eachshow slot is accessed and the show title is displayed in the horizontalblock corresponding to the show slot.

[0073] Ad Data Structures

[0074] An ad list data structure is similar to the show list. Itincludes a start time and 24 hours of ad scheduling. The ad list isregionalized and includes an ad slot for each ad to be broadcast for agiven day. The ad slot includes a duration and an Ad ID utilized toaccess an ad entry.

[0075] Each add entry includes an ad banner text field, an ad textfield, and a pointer to an ad logo, if appropriate. The ad logo includesa graphics file to be displayed with the ad.

[0076] The ad entries include the ad banner text and ad text.

[0077] Building the Database

[0078] The data base is built by a data base engine software moduleoperating on the processor. Messages comprising discrete commands arereceived by the database engine. Examples of commands include a RegionCommand which specifies channels available for a particular subscriberunit to be included in the Channel Data Table; a Channel Data commandincluding information utilized to form the entries in the Channel DataTable; and Showlist, Show Title, and Show Description commands includingSIDs and DIDs referencing areas in memory. The database engine selectsonly Showlist Commands relevant to channels included in the ChannelTable for further processing.

[0079] The data base engine creates storage locations in memory for allSIDs and DIDs included in any Showlist. Information included in commandshaving matching SIDs or DIDs is written to the referenced memory area.In practice the SIDs and DIDs are processed by a hashing system for moreefficient searching.

[0080] The messages may be transmitted to a subscriber unit in variousways. A system for receiving messages in the VBIs of broadcastprogramming has been described above. In a DBS system the messages maybe transmitted in a dedicated bit stream.

[0081] In a DBS system video baseband signals are digitized, compressed,and modulated onto analog carrier signals. Because of advances in theart of compression, a carrier once used to transmit a single program cannow transmit four programs. Typically, in addition to video signalsother bitstreams encoding information such as audio, VBI (verticalblanking information data such as closed caption and teletext), programguide information, and conditional access information, are provided asseparate bitstreams, multiplexed into a composite bit stream, andmodulated onto a carrier signal.

[0082] Alternatively, the database itself may be transmitted in adigital data stream. For example, in DSS the program guide informationis transmitted in blocks of 3 hours of programming for 36 channels.Programming is digitally modulated onto different bands. As depicted inFIG. 6, a satellite has several transponders 500 simultaneouslytransmitting on different bands. Several channels can be modulated ontoa single band utilizing digital compression techniques. A bit streamincluding the current programming is carried by all bands. However,future programming for different blocks of channels is transmitted ondifferent bands. The blocks are transmitted as a carousel or endlessloop so that there may be a delay before a particular time band isreceived.

[0083] A decoder at the viewer's location receives 16 carriers andcontrols a tuner/demodulator to select one carrier. The carrier issampled, decoded, error-corrected, and demultiplexed to separate thevarious bit streams. The decoder includes video decoder chips whichdecompress compressed video to reconstruct pictures of virtually anysize.

[0084] When the viewer accesses the guide the block for that time periodis loaded into memory so that the user can interact with the guide. Fora future time and different channel there may be a time delay. Forexample, if the current programming block were B1 and the blockcurrently received is B4 the user must wait for blocks B5, B6, and B7,to be transmitted before the current programming can be received anddisplayed. The viewer would wait for a time delay equal to the sum oftime durations for transmitting each block, i.e., d5+d6+d7. If theprogram guide block is modulated onto a different band the cable boxmust tune to the band and wait until the desired block is transmitted onthe carousel, so if the guide is accessed for future programming therecould be a delay.

[0085] For cable the database is built at the SST head end and sent overland-lines to the cable head end. The cable company sends data any wayit wants, e.g. VBIs, satellite, digital, etc.

[0086] User Interface

[0087] The user interface takes remote control commands as its primaryinput. In one embodiment a user requests various functions by pressingfunction buttons on a remote control. In another embodiment, the GUI isutilized with different interactive regions on a displayed screencorresponding to different functions. The user moves the cursor over theinteractive region corresponding to a desired function and selects thefunction to generate a command. The particular form of entering acommand is not critical and technology for utilizing voice commands maysoon be available.

[0088] The user interface receives commands and responds with arequested display screen and by performing the function requested by thecommand. The function performed may be to perform an action such asrecording a program, tuning to a channel, accessing a related internetsite, purchasing a pay-per-view program, or purchasing merchandise. Thedata and format of each screen is dependent on the previous screen, timeof, day, the contents of the data base, the command received, and otherparameters. A state table is used to define the screen flow.

[0089] For every defined screen, there is an entrance function, an exitfunction, an update function, and an array of request-handlingfunctions. The entrance function is called when a state is first enteredto collect all necessary data and format the screen. The exit functionis called to release memory and data for the screen. The update functionis called once per minute to update the screen time and to re-draw thescreen if any information displayed on the screen needs to be updated.

[0090] Once in a particular state, the table contains a reference toanother software function corresponding to each key on the remotecontrol or to each interactive region on the screen. These referencedfunctions will be executed whenever an associated remote control buttonis pressed or interactive region is selected.

[0091] For example, if the user wishes to record a program, in the GUIembodiment, the viewer moves the cursor over the record interactiveregion which is then selected to request that the recording function beperformed. A confirmation screen will then be generated. Once the userconfirms the recording request, an entry is made in a recording queue. Arecord daemon is then called from the real-time executive to examine thequeue and manage recording functions.

[0092] The screens are displayed by the on-screen display (OSD)controller based on graphic display commands issued by the databaseengine. Among the primitive commands needed to draw system displayscreens are the Erase Screen Command; Draw Rectangle Command; SaveRectangle Command; Restore Rectangle Command; Move Rectangle Commands;Write ASCII String Command; and Draw Channel Icon Command.

[0093] Each screen includes areas that are constant and based on codeand data stored in non-volatile memory and variable areas such as showtitles and descriptions which utilize data stored in the database. Asdescribed above in the description of the database engine, the databaseis structured to facilitate efficient searching for information,generally in the form of ASCII text strings, stored in the database.Additionally, graphics files are also being stored in the database to bedisplayed in windows of the display screen.

Detailed Description of the Preview Unit

[0094]FIG. 7 is a block diagram of one embodiment of the invention andFIG. 8 is flow chart depicting the steps to previewing a program.Referring to FIGS. 7 and 8, an EPG system 700 performs the databaseengine and user interface functions as described above. An EPG videosignal 702 is provided as a primary signal to be displayed on a firstportion of a display screen by a picture-in-picture (PIP) controller704.

[0095] A preview controller 706 is provided information identifying aparticular program selected by the user. The preview controller 706controls the decoder 36 to tune to the band carrying the previewbitstream, accesses the demultiplexed bit stream, processes the previewheaders to identify a preview packet corresponding to the programidentified by the viewer, and controls the decoder to provide anauxiliary video signal displaying the preview video corresponding to theselected program. Additionally, if the preview includes audio thepreview controller causes the decoder to process audio bits in thepreview packet and provide an audio signal to the television set.

[0096]FIG. 9 schematically depicts the digital information carried byone carrier of a DBS. As described, four channels can be compressed andcarried on one carrier. Additionally, VBI information, program guideinformation, etc. may also be carried. The trailer video streams canalso be carried. As described above, if the trailers are displayed insmall window the video can be highly-compressed so that the trailer bitstreams do not use much of the bandwidth of the carrier.

[0097]FIG. 10 depicts alternative ways of transmitting the trailers. Onetrailer bit stream can transmit a single trailer as a carousel 900.Thus, for a particular show the preview controller 706 selects theparticular bit stream and the trailer will be displayed with noperceptible delay. Alternatively, a plurality of trailers can betransmitted as a single bit stream. Each trailer is included on acarousel 902. In this embodiment, less bandwidth is required but theremay be a perceptible delay before a particular trailer is displayed.

[0098] The PIP controller 704 then displays the preview video on asecond portion of the display screen. Alternatively, the preview can bedisplayed on the entire screen. The trailer video could not be ashighly-compressed as when viewed in window and more bandwidth of thecarrier would be required. The size of the window for displaying thetrailer is determined depending on the specification for a particularsystem.

[0099] The invention has been described with reference to the preferredembodiments. Alternatives and substitutions will now be apparent topersons of skill in the art. For example, although the preferredembodiment utilizes a television system the invention is applicable to aPC-TV system. The preview bit stream either is processed by the PC-TVdirectly to display the preview video or an auxiliary video signal isprocessed to be displayed within a window.

What is claimed is:
 1. A method of providing preview information toassist in selecting video programming, said method comprising:displaying schedule information on a display screen including source andidentification information about one or a plurality of available shows;receiving user input to select a particular show from said plurality ofshows; receiving user input to initiate a preview operation; anddisplaying a preview including a video preview of the particular show onthe screen.
 2. The method of claim 1 further comprising the steps of:receiving said video preview in compressed form; and decompressing saidvideo preview to displaying the video preview.
 3. The method of claim 1wherein said step of selecting comprises the steps of: highlighting aparticular show with a cursor or pointer.
 4. The method of claim 2further comprising the steps of: receiving a preview bit stream in theform of an endless loop of a plurality of preview packets, each previewpacket including header information and compressed video information;and utilizing said header information to identify a particular previewpacket in said endless loop that is associated with the particular showselected.
 5. The method of claim 2 further comprising the steps of:receiving a preview bit stream in the form of an endless loop of asingle preview packet repeated a plurality of times, said preview packetincluding header information and compressed video information; andutilizing said header information to identify a particular previewpacket in said endless loop that is associated with the particular showselected.
 6. The method of claim 1, 2, 3, 4, or 5 further comprising thestep of: displaying said preview in window that is smaller than thedisplay screen.
 7. The method of claim 1, 2, 3, 4 or 5 furthercomprising the step of: displaying said preview on the entire displayscreen.
 8. A method of providing preview information to assist inselecting video programming, said method comprising: displaying scheduleinformation on a display screen including source and identificationinformation about one or a plurality of available shows; receiving userinput to select a particular show from said plurality of shows andself-activate the initiation of a preview operation; and displaying apreview including a video preview of the particular show on the screen.9. The method of claim 8 further comprising the steps of: receiving saidvideo preview in compressed form; and decompressing said video previewto displaying the video preview.
 10. The method of claim 8 wherein saidstep of selecting comprises the steps of: highlighting a particular showwith a cursor or pointer.
 11. The method of claim 9 further comprisingthe steps of: receiving a preview bit stream in the form of an endlessloop of a plurality of preview packets, each preview packet includingheader information and compressed video information; and utilizing saidheader information to identify a particular preview packet in saidendless loop that is associated with the particular show selected. 12.The method of claim 9 further comprising the steps of: receiving apreview bit stream in the form of an endless loop of a single previewpacket repeated a plurality of times, said preview packet includingheader information and compressed video information; and utilizing saidheader information to identify a particular preview packet in saidendless loop that is associated with the particular show selected. 13.The method of claim 8, 9, 10, 11, or 12 further comprising the step of:displaying said preview in window that is smaller than the displayscreen.
 14. The method of claim 8, 9, 10, 11, or 12 further comprisingthe step of: displaying said preview on the entire display screen.
 15. Asystem for previewing selected programs comprising: a television systemfor displaying video signals provided as baseband video signal or RFsignals; a decoder for receiving digital signals, providing selected bitstreams encoded by the digital signals, and converting a selected bitstream into a video signal, with one of the bit streams being a previewbit stream including preview packets in form of a header identifying thepreview and compressed preview video bits; a preview controller, coupledto the decoder to receive the preview bit stream, for inspecting saidheaders to identify a selected preview packet and for controlling thedecoder to convert the preview video bits in the selected packet to anauxiliary video signal; a display controller, coupled to receive primaryand auxiliary video signals, for displaying the primary video signal ona first portion of the display screen and the auxiliary video signal ona second portion of the display screen; an EPG system for providing anEPG video signal for displaying an electronic guide as a primary signal,for providing a user interface that receives user input selecting aparticular program displayed in an EPG, for controlling the previewcontroller to select a particular preview packet corresponding theparticular signal so that the auxiliary signal will display a preview ofthe particular channel on the second portion of the display screen. 16.The method of claim 15 wherein said digital signal is a DBS signal.